package com.qingyun.system.model.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 聊天记录用户视图对象
 */
@Data
public class MessageVO implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @Schema(description = "序号")
    private Long id;

    /**
     * 发送者ID，可能是访客或客服
     */
    @Schema(description = "发送者ID")
    private Long senderId;

    /**
     * 发送者类型：0-访客，1-客服，2-机器人
     */
    @Schema(description = "发送者类型")
    private Long senderType;

    /**
     * 聊天消息内容
     */
    @Schema(description = "聊天内容")
    private String message;

    /**
     * 消息发送时间
     */
    @Schema(description = "发送时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime sentTime;

    /**
     * 公司名称
     */
    @Schema(description = "公司名称")
    private String createBy;
}
